<!DOCTYPE html>
<html lang="en">

  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
  </head>

  <body>
    <script>
      /*
            借用构造函数实现继承

                什么时候才会使用继承 --- 封装代码，从大分类里面分出小分类的时候

                比如：  Person   分出一个小分类   Student

                做法：
                    1. 先完成大分类的构造函数
                    2. 在小分类构造函数中， 使用call进行借用
                        大构造函数.call(this,大构造函数所需的参数)
        */
      function Person(name, age, gender) {
        this.name = name
        this.age = age
        this.gender = gender
      }


      function Teacher(name, age, gender, salary) {
        Person.call(this, name, age, gender)
        this.salary = salary
      }
      // let t1 = new Teacher('李狗蛋', 28, '女')
      // console.log(t1);

      function Student(name, age, gender, number) {
        Person.call(this, name, age, gender) // 借用构造函数
        this.number = number
      }

      let s1 = new Student('狗蛋', 12, '男')
      console.log(s1);

      
    </script>
  </body>

</html>